package myjava.f_file;

import java.io.File;
import java.io.IOException;
import java.util.Date;

/**
 * @Auther: cty
 * @Date: 2019/11/7 下午8:07
 * @Description: 测试File类的基本用法
 * @version: 1.0
 */
public class A_TestFile {
    public static void main(String[] args) throws IOException {
        File f = new File("/home/cty/Project/IdeaProjects/a.txt");
        System.out.println(f);

        //renameTo-文件重命名
        f.renameTo(new File("/home/cty/Project/IdeaProjects/b.txt"));

        //获取项目路径
        String projectPath = System.getProperty("user.dir");
        System.out.println(projectPath);

        //createNewFile-创建文件；delete-删除文件
        File f2 = new File("output/gg.txt");  //未指定路径,默认在当前当前项目路径下
        //File f2 = new File("/home/cty/gg.txt");  //指定路径
        f2.createNewFile();  //执行创建文件命令
        //f2.delete();  //执行删除文件命令

        //File其他方法
        System.out.println("File是否存在："+f2.exists());
        System.out.println("File是否目录："+f2.isDirectory());
        System.out.println("File是否文件："+f2.isFile());
        System.out.println("File最后修改时间："+new Date(f2.lastModified()));  //f2.lastModified()是时间戳
        System.out.println("File的大小："+f2.length());
        System.out.println("File的文件名："+f2.getName());
        System.out.println("File的相对目录路径："+f2.getPath());
        System.out.println("File的绝对目录路径："+f2.getAbsolutePath());

        //创建文件夹
        File f3 = new File("/home/cty/movie/Chinese");
        boolean flag3 = f3.mkdir();  //目录结构中有一个不存在，则不会创建目标文件夹
        System.out.println(flag3);  //创建失败

        File f4 = new File("/home/cty/movie/Chinese");
        File f5 = new File("/home/cty/movie");
        boolean flag4 = f4.mkdirs();  //目录结构中即使有不存在，也会创建目标文件夹
        System.out.println(flag4);  //创建成功，前提是文件夹不存在
        //f4.delete();  //只会删除Chinese文件夹
        //f5.delete();  //注意在没删除Chinese文件夹前不能先删除movie
    }
}
